
<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta charset="utf-8" />
    <title>Method and Theory &#8212; iprPy 0.10.2 documentation</title>
    <link rel="stylesheet" href="../../_static/basic.css" type="text/css" />
    <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
    <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
    <script type="text/javascript" src="../../_static/jquery.js"></script>
    <script type="text/javascript" src="../../_static/underscore.js"></script>
    <script type="text/javascript" src="../../_static/doctools.js"></script>
    <script type="text/javascript" src="../../_static/language_data.js"></script>
    <script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
    <script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
    <script type="text/x-mathjax-config">MathJax.Hub.Config({"tex2jax": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true, "ignoreClass": "document", "processClass": "math|output_area"}})</script>
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="Input script parameters" href="parameters.html" />
    <link rel="prev" title="Introduction" href="intro.html" /> 
  </head><body>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="../../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="parameters.html" title="Input script parameters"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="intro.html" title="Introduction"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="../../index.html">iprPy 0.10.2 documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="../../calculation_styles.html" >Calculation Styles</a> &#187;</li>
          <li class="nav-item nav-item-2"><a href="index.html" accesskey="U">relax_box</a> &#187;</li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="method-and-theory">
<h1>Method and Theory<a class="headerlink" href="#method-and-theory" title="Permalink to this headline">¶</a></h1>
<p>The math in this section uses Voigt notation, where indicies i,j
correspond to 1=xx, 2=yy, 3=zz, 4=yz, 5=xz, and 6=xy, and x, y and z are
orthogonal box vectors.</p>
<p>An initial system (and corresponding unit cell system) is supplied with
box dimensions, <span class="math notranslate nohighlight">\(a_i^0\)</span>, close to the equilibrium values. A LAMMPS
simulation is performed that evaluates the system’s pressures,
<span class="math notranslate nohighlight">\(P_{i}\)</span>, for the initial system as given, and subjected to twelve
different strain states corresponding to one of <span class="math notranslate nohighlight">\(\epsilon_{i}\)</span>
being given a value of <span class="math notranslate nohighlight">\(\frac{\Delta \epsilon}{2}\)</span>, where
<span class="math notranslate nohighlight">\(\Delta \epsilon\)</span> is the strain range parameter. Using the
<span class="math notranslate nohighlight">\(P_{i}\)</span> values obtained from the strained states, the
<span class="math notranslate nohighlight">\(C_{ij}\)</span> matrix for the system is estimated as</p>
<div class="math notranslate nohighlight">
\[C_{ij} \approx - \frac{P_i(\epsilon_j=\frac{\Delta \epsilon}{2}) - P_i(\epsilon_j=-\frac{\Delta \epsilon}{2})}{\Delta \epsilon}.\]</div>
<p>The negative out front comes from the fact that the system-wide stress
state is <span class="math notranslate nohighlight">\(\sigma_i = -P_i\)</span>. Using <span class="math notranslate nohighlight">\(C_{ij}\)</span>, an attempt is
made to compute the elastic compliance matrix as
<span class="math notranslate nohighlight">\(S_{ij} = C_{ij}^{-1}\)</span>. If successful, new box dimensions are
estimated using <span class="math notranslate nohighlight">\(S_{ij}\)</span>, <span class="math notranslate nohighlight">\(a_i^0\)</span>, and <span class="math notranslate nohighlight">\(P_i\)</span> for the
unstrained system</p>
<div class="math notranslate nohighlight">
\[a_i = \frac{a_i^0}{1 - (\sum_{j=1}^3{S_{ij} P_j})}.\]</div>
<p>The system is updated using the new box dimensions. The process is
repeated until either <span class="math notranslate nohighlight">\(a_i\)</span> converge less than a specified
tolerance, <span class="math notranslate nohighlight">\(a_i\)</span> diverge from <span class="math notranslate nohighlight">\(a_i^0\)</span> greater than some
limit, or convergence is not reached after 100 iterations. If the
calculation is successful, the final <span class="math notranslate nohighlight">\(a_i\)</span> dimensions are
reported.</p>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h4>Previous topic</h4>
  <p class="topless"><a href="intro.html"
                        title="previous chapter">Introduction</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="parameters.html"
                        title="next chapter">Input script parameters</a></p>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="../../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="parameters.html" title="Input script parameters"
             >next</a> |</li>
        <li class="right" >
          <a href="intro.html" title="Introduction"
             >previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="../../index.html">iprPy 0.10.2 documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="../../calculation_styles.html" >Calculation Styles</a> &#187;</li>
          <li class="nav-item nav-item-2"><a href="index.html" >relax_box</a> &#187;</li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.1.2.
    </div>
  </body>
</html>